// CoachMemory.h

// Interfejs pre pamat kouca

#ifndef COACHMEMORY_H
#define COACHMEMORY_H

#include "Common/Interfaces/Interface.h"
#include "Common/World/ParamStructs.h"
#include "Common/World/Types.h"
#include "Common/Support/DynArray.h"

// Pamatove ulohy ukladaju informacie o okoli systemu
class CoachMemoryInterface : public Interface
{
public:
	// Konsturktor
	CoachMemoryInterface() : Interface("Coach Memory Interface", "v0.0.01") {}
	// Destruktor
	virtual ~CoachMemoryInterface() {}

	// Vrati nase skore
	virtual unsigned GetOurScore() const = 0;
	// Vrati simulacny mod
	virtual PlayMode GetPlayMode() const = 0;
	// Vrato simulacny cas
	virtual int GetSimTime() const = 0;
	// Vrati skore supera
	virtual unsigned GetTheirScore() const = 0;
	// Vrati typ hraca podla cisla hraca
	virtual int GetTypeByNumber(unsigned number) const = 0;
	// Parameter side: strana, na ktorej hra nas hrac
	virtual void OnInit(bool side) = 0;
};

#endif // COACHMEMORY_H
